As computing technology has advanced, the functionality made available to users through various programs, including computer operating systems and other applications, has increased greatly. While this increase in functionality is very helpful to users, it is not without its problems. One such problem is that given the number of different programs users may install on their devices, as well as the size of some programs, the process of setting up a computer with new programs can be time consuming. For example, when a user purchases a new computer and begins using it for the first time, he or she may have to wait for several minutes while various programs, updates to programs, and so forth are installed on the computer. Such delays can be annoying for users, leading to a poor user experience.